DUA3:<000000>VAXFORUPD.MEM;41




                            VAXFORUPD.MEM

             Summary of Updates to VAX FORTRAN Version 4

                           22-February-1988



1  COMPILER VERSION NUMBERS

The following list contains a short descriptive summary of each change
made  for  this  update  of  the VAX FORTRAN compiler.  The edit level
number, which appears at the end of the compiler  version  number,  is
incremented  by one for each change.  The version number is printed at
the top of each page of source listing generated by the compiler.  The
edit  level  appearing  to  the left of each description was the level
number after that change was made.  Thus, any compiler  versions  with
level  numbers  equal  to  or greater than the one given for a certain
change, contain that change.



2  SUMMARY OF CHANGES



Version   Change Description


V4.0-2    Initial  release  of   V4.0   compiler.    It   incorporates
          corrections up to V3.5-66.


V4.1-45   Maintenance update Version V4.1 compiler.


V4.2-102  Maintenance update Version V4.2 compiler.


V4.3-145  Maintenance update Version V4.3 compiler.


V4.4-177  Maintenance update Version V4.4 compiler.


V4.5-219  Maintenance update Version V4.5 compiler.


V4.6-244  Maintenance update Version V4.6 compiler.


V4.7-271  Maintenance update Version V4.7 compiler.










Fortran Updates
SUMMARY OF CHANGES


V4.7-272  The  compiler  failed  with  an   access   violation   under
          conditions  involving  the intrinsic function MOD being used
          in an I/O statement  that  has  an  IOSTAT  specified.   The
          arguments  to  MOD  must  have  different  data  types, i.e.
          INTEGER*4 and INTEGER*2.  The compiler has been modified  to
          properly handle this situation.


V4.7-273  The compiler  failed  to  generate  a  diagnostic  when  the
          /STANDARD=ALL  qualifier  was enabled and a lower case c was
          used as a comment line indicator.  The compiler also  failed
          generate  a  diagnostic when the /STANDARD=ALL qualifier was
          enabled and no argument list or parenthesis  appeared  on  a
          FUNCTION  statement.   The  compiler  has  been  modified to
          properly generate a diagnostic for this condition.


V4.7-274  The compiler was generating bad code under  some  conditions
          involving  an  operation  in  a  DO-loop  between  two array
          elements.  The index for both array references is  the  same
          nested  array  element.   The  index for the nested array is
          invariant within the DO-loop.  For instance:

                TEST(ITMP(I)) * TEST_1(ITMP(I))

          where I does not change within the  DO-loop.   The  compiler
          has  been  modified  to  generate  correct  code under these
          conditions.


V4.7-275  The compiler was generating bad code under  some  conditions
          involving  many  references  to SIN, COS, COSD, or SIND in a
          routine.  The references must all have the same argument and
          must exist in some nested IF-THEN-ELSE blocks.  The compiler
          has been modified  to  generate  correct  code  under  these
          conditions.


V4.8-276  The compiler was generating bad code under  some  conditions
          involving  a  NAMELIST read.  The problem could occur when a
          variable contained within a NAMELIST  is  assigned  a  value
          prior  to  the  associated NAMELIST read and the variable is
          used as the conditional of an  ELSE-IF  block.   Within  the
          THEN  block  there  also  must  be  a  reference  to the and
          modification  of  the  variable.   The  compiler  has   been
          modified to generate correct code under these conditions.


[end of VAXFORUPD.MEM]

 
